Verstappen headed Charles Leclerc and Oscar Piastri to win the race while a mistake under yellow flags left scrambling back to 10th place.
A strong start from the inside saw Verstappen elbow his way into the lead, opening the door for Norris to follow him through as George Russell fell to third.
In the pack, drama hit Franco Colapinto and Esteban Ocon as they clashed in the pack, drawing the Safety Car as they abandoned their cars at Turn 1.
The incident was triggered by Nico Hulkenberg, who got into Ocon with Colapinto the innocent victim on the outside.
Two corners later, the other Williams of Alex Albon was in the wars, banging wheels with Lance Stroll in a clash the Canadian was deemed to blame for.
He copped a 10-second penalty as a result, though it mattered little given he was circulating at the back of the pack anyway and Aston Martin retired him after 10 laps.
The Safety Car was withdrawn at the end of Lap 4 with Verstappen leading from Norris, Russell, Charles Leclerc, Piastri, Carlos Sainz, Sergio Perez, Fernando Alonso, Lewis Hamilton, and Yuki Tsunoda.
Piastri immediately attacked Leclerc, easing by the Ferrari driver into Turn 1.
Behind them, Liam Lawson attempted a move on Valtteri Bottas but overcooked it and lost the back end at a point where the move was, for the most part, done.
It dropped the Kiwi to the rear of the field while Guanyu Zhou scrambled across the run-off to avoid the pirouetting RB.
Officials took note and penalised Lawson, handing him a 10-second penalty for the mistake.
The race quickly settled down and Verstappen extended a 1.7s advantage over Norris, who was a similar distance from Russell in third.
Running eighth, Hamilton picked up a five-second penalty for a jump start.
The Mercedes driver moved before the lights went out, and though he stopped before getting going once more, he’d still moved.
Mercedes eventually broke the stalemate by pitting Russell from third, but a slow stop saw him stationary for seven seconds.
The delay was with the right rear, the delay opening the door for McLaren to poach third place.
McLaren didn’t immediately react with Piastri, instead the Australian pushed on, recording a new personal best of the race as he worked to create a tyre delta over Russell.
He was dragging Leclerc along with him, the Ferrari driver two seconds behind in fourth but turning near identical times.
Russell’s delay had seem him emerge in traffic, and soon began losing time behind Alonso to further compromise his race at a rate of more than 1.5s per lap.
Hamilton’s dismal day got worse when he slowed, his Mercedes sparking heavily after running over debris on the front straight, his left-front wheel punctured.
A mirror had broken loose from one of the cars before being run over by Bottas, spraying carbon shards across the front straight.
Sainz also ran over the debris, picking up a puncture in the process.
McLaren reacted in anticipation of a Safety Car, pitting Piastri. It was a prudent move as it was called for moments later.
The leaders all headed to the lane; Verstappen, Norris, and Leclerc having all remained on track prior to the Safety Car being deployed.
However, the Australian lost out as Leclerc got a cheaper stop, leaping ahead of the McLaren driver into third on the road.
The process released Russell from Alonso, though the damage to his race had already been done.
Under the Safety Car on Lap 37, the order ran Verstappen from Norris, Leclerc, Piastri, Perez, Pierre Gasly, Russell, Sainz, Zhou, and Alonso in the top 10.
Racing finally resumed at the start of Lap 40, the field having completed their necessary stop to make for a 17 lap print to the chequered flag.
It was a poor restart for Verstappen, who got wheelspin as he accelerated out of the final corner.
That allowed Norris to draw alongside into Turn 1 but he couldn’t make it stick.
Meanwhile Piastri attacked Leclerc, but was similarly unable to find a way through as the top for, somehow, remained unchanged.
Perez’s race came to an abrupt end when he lost drive heading to the restart while Hulkenberg became buried in the gravel at Turn 9 to end his race soon after the race went green once more.
The Safety Car was quickly redeployed, with RB taking the opportunity to box both Lawson and Tsunoda for fresh, soft tyres.
Running at the back of the pack, and with only 15 runners remaining, there was little to lose.
During the interruption, officials took a look at Norris for potentially failing to slow for yellow flags.
At the Lap 42 restart, Verstappen got a better jump to lead the field back to the green flag.
However, Leclerc was close to Norris and attacked into Turn 1, forcing the McLaren driver to defend.
It was a far calmer restart without further incident, Hamilton dropping back from 12th to 14th excluded.
Shortly after the restart, officials announced a 10-second stop/go penalty for Norris’ yellow flag transgression.
He promptly served that at the end of Lap 45, plummeting the McLaren driver down the order as the pack remained bunched by the Safety Car.
It spat him out in 15th and last on the road, well off the back of Lawson with seemingly little time to make inroads.
Norris’ penalty promoted Leclerc to second and Piastri third.
It was also good news for Sauber, which boasted Zhou Guanyu in eighth and within 10 laps of its first points of the season.
Leclerc was no match for Verstappen and quickly fell away from the race lead.
He was equally too quick for Piastri, who could stick with the Ferrari but was never close enough to challenge.
Russell recovered to fourth with Gasly delivering another healthy armful of points for Alpine in fifth.
Sainz was sixth followed by Alonso, Zhou, Kevin Magnussen, and the recovering Norris.
There was one last sting in the tail as Russell was investigated for a Safety Car infringement, though no decision was forthcoming before the end of the race.
The result saw the constructors’ championship close, with just 19 points now separating McLaren from Ferrari with only next weekend’s Abu Dhabi Grand Prix remaining.
Alpine has also regained sixth in that competition from Haas, while a disappointing weekend for RB has seen it lose ground to now sit a comparatively distant eighth.
And after 23 races, Sauber finally got off the mark courtesy of Zhou, picking up four points.
While in the grand scheme of things it means nothing, since the team remains rooted to the foot of the standings, it is some sort of reward for the season-long toil the squad has endured.